/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package admin.reportes;

import DBMS.DataBaseManager;
import admin.permisos.PermisosManager;
import clases.Reporte;
import clases.Usuario;
import java.util.ArrayList;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;

/**
 * @Author Gimbet
 */
public class EliminarReporte extends DispatchAction {

    private final String SUCCESS = "success";
    private final String FAILURE = "failure";
    private static final String name = "Eliminar Recordatorio";

    public ActionForward delete(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {
//        Usuario usr = (Usuario) request.getSession().getAttribute("logueado");
//        DataBaseManager dbms = DataBaseManager.getInstance();
//        if (!PermisosManager.validar(this.name, dbms.consultarPermisoAccion(name), usr.getPermiso())) {
//            System.out.println("No tiene permiso");
//            return mapping.findForward(FAILURE);
//        }
        DataBaseManager dbms = DataBaseManager.getInstance();
        Reporte r = (Reporte) form;
        System.out.println("El id del rporte: " + r.getIdreporte());
//        DataBaseManager dbms = DataBaseManager.getInstance();

        if (dbms.eliminarReporte(r)) {
            System.out.println("El reporte fue eliminado exitosamente");
            r.setMensajeOK("Reporte eliminado");
            ArrayList<Reporte> reportes = DataBaseManager.getInstance().consultarReportes();
            if (reportes != null) {
                request.setAttribute("reportes", reportes);
            }
            return mapping.findForward(SUCCESS);
        } else {
            System.out.println("El reporte no pudo ser eliminado");
            ArrayList<Reporte> reportes = DataBaseManager.getInstance().consultarReportes();
            if (reportes != null) {
                request.setAttribute("reportes", reportes);
            }
            r.setMensaje("Reporte no pudo ser eliminado");
            return mapping.findForward(FAILURE);
        }
    }
}
